package cn.wjh.business.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.core.domain.entity.SysUser;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.Date;
import java.util.List;

/**
 * 比赛作品对象 tbl_works
 *
 * @author jiraWu
 * @date 2023-10-20
 */
@EqualsAndHashCode(callSuper = true)
@Data
@TableName("tbl_works")
public class Works extends BaseEntity {
	private static final long serialVersionUID = 1L;


	/**
	 * 主键
	 */
	@TableId
	private Long worksId;


	/**
	 * 作品名称
	 */
	@Excel(name = "作品名称")
	private String title;


	/**
	 * 作品介绍
	 */
	@Excel(name = "作品介绍")
	private String description;


	/**
	 * 作品附件
	 */
	@Excel(name = "作品附件")
	private String attachments;


	/**
	 * 作品作者
	 */
	@Excel(name = "作品作者")
	private Long userId;


	/**
	 * 作品所属比赛
	 */
	private Long competitionId;


	/**
	 * 创建时间
	 */
	private Date createTime;


	/**
	 * 修改时间
	 */
	private Date updateTime;


	/**
	 * 创建人
	 */
	private String createBy;


	/**
	 * 修改人
	 */
	private String updateBy;


	/**
	 * 备注
	 */
	private String remark;


	/**
	 * 0审核中 1审核成功 2审核失败
	 */
	@Excel(name = "0审核中 1审核成功 2审核失败")
	private Integer status;


	/**
	 * 失败原因
	 */
	@Excel(name = "失败原因")
	private String reason;

	/*浏览数量*/
	@Excel(name = "浏览数量")
	private Long views;

	@TableField(exist = false)
	/*作者*/
	private SysUser user;

	/*收藏数量*/
	@TableField(exist = false)
	private Long collect;

	/*点评状态 */
	@TableField(exist = false)
	private Boolean judgement;/*点评状态 */

	@TableField(exist = false)
	private List<Long> judgeIds;

	/*作品点评平均分数 */
	@TableField(exist = false)
	private Long totalScore;
}

